package br.edu.infnet.avaliacao.servlet;

import java.io.IOException;
import java.util.Date;
import java.util.List;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import br.edu.infnet.avaliacao.dao.UsuarioDAO;
import br.edu.infnet.avaliacao.dao.UsuarioJDBCDAO;
import br.edu.infnet.avaliacao.modelo.Usuario;

/**
 * Servlet implementation class UsuarioServlet
 */
@WebServlet("/UsuarioServletJSTLDAO")
public class UsuarioServletJSTLDAO extends HttpServlet {
	private static final long serialVersionUID = 1L;

	/**
	 * @see HttpServlet#HttpServlet()
	 */
	public UsuarioServletJSTLDAO() {
		super();
	}

	protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		doPost(request, response);
	}

	/**
	 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
	 *      response)
	 */
	protected void doPost(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		Usuario usuario = new Usuario();
		usuario.setId(Integer.valueOf(request.getParameter("txtID")));
		usuario.setNome(request.getParameter("txtNome"));
		usuario.setEndereco(request.getParameter("txtEndereco"));
		usuario.setTelefone(request.getParameter("txtTelefone"));
		usuario.setDataNascimento(new Date());

		request.setAttribute("usuario", usuario);
		
		UsuarioDAO dao = new UsuarioJDBCDAO();
		
		if (!dao.existe(usuario.getId())){
			dao.inserir(usuario);	
		}		
		
		List<Usuario> listaUsuario = dao.listar();
				
		request.setAttribute("minhaLista", listaUsuario);

		RequestDispatcher rd = request
				.getRequestDispatcher("usuarioSucessoJSTL.jsp");
		rd.forward(request, response);
	}
}